home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Amiga Collections: Taifun
/
Taifun 029 (1987-08-15)(Ossowski, Stefan)(DE)(PD).zip
/
Taifun 029 (1987-08-15)(Ossowski, Stefan)(DE)(PD).adf
/
ue18
/
Config!
< prev
next >
Wrap
Text File
|
1978-08-10
|
46KB
|
1,200 lines
-----------------------------------------------------------------------------
| Config! V1.8 |
| Copyright (C) 1986-87 Rick Stiles. All rights reserved. |
| 2420 Summit Springs Drive, Atlanta GA, 30338 |
-----------------------------------------------------------------------------
Config! defines Uedit's start-up settings and commands. Copy Config!, Data!,
and Help! to S: so that Uedit can find them.
If you edit Config! and want to make a new Data! file, type "Run UE -c" in
CLI. (Or you can rename S:Data! or delete it, and Uedit will be forced to
compile Config! next time.)
If you create a new config such as "NewConfig", you can make Uedit compile it
by typing "UE -cNewConfig" in CLI. On the "Save new Data?" question,
selecting Yes will replace S:Data!. Selecting No will preserve the old
S:Data!. Once inside Uedit, you can select "Save config" and save it under a
new name like "NewData".
To make Uedit use NewData next time, type "UE -dNewData" in CLI. To make it
your standard data file, rename it to S:Data!.
******************************************************************************
* *
* DO NOT share or distribute a modified version of Uedit.arc! Change these *
* commands as you wish, but leave the ORIGINAL Uedit.arc untouched! *
* *
******************************************************************************
Edit the numbers at the left, but leave the angle-brackets as they are:
<0> auto-backup mode: 0 = no, 1 = yes
<1> word-wrap mode: 0 = no, 1 = yes
<0> right-justify mode: 0 = no, 1 = yes
<77> maximum line-length: 10 thru 999
<66> lines per page: 1 thru 999
<0> over-strike mode: 0 = no, 1 = yes
<1> auto-indent mode: 0 = no, 1 = yes
<0> print selection: 0 = parallel port, 1 = Preferences
<0> search sensitive to upper/lower case: 0 = no, 1 = yes
<?> search-string wildcard (1 character)
<$> search string "either-or" delimiter (1 character)
<4> tab spacing: 1-40
<10> end-of-line character: 10 = Newline, 13 = Return or Enter
These are for the speech synthesizer:
<n> "n" = natural,"f" = female,"m" = male,"r" = robotic
<120> speech pitch: 65-320
<200> speech speed: 40-400
<0> speak alert messages: 0 = no, 1 = yes
<0> speak ordinary messages: 0 = no, 1 = yes
===========================================================================
Everything from here onward is menu selections or commands.
Be sure and keep a backup copy of the original Config!, if you change this
file!
(( NOTE:
The first 5 entries below are Menu Titles. Their key argument is not used.
Menu Titles can have up to 10 characters.
The rest of the menu() entries are selections belonging to the 5 Menu
Titles.
Menu selection descriptions can have up to 17 characters.
))
<startup:
menu("Files",1,normal-f1)
menu("Buffers",2,normal-f1)
menu("Commands",3,normal-f1)
menu("Settings",4,normal-f1)
menu("Edits",5,normal-f1)
menu("Next file f1",1,normal-f1)
menu("Next fav't S-f1",1,shft-f1)
menu("Open A-f1",1,alt-f1)
menu("New file C-f1",1,ctl-f1)
menu("Insert SA-f1",1,shftAlt-f1)
menu("Restore SC-f1",1,shftCtl-f1)
menu("Rename A-n",1,alt-n)
menu("AmigaDOS C-y",1,ctl-y)
menu("DOS + result C-z",1,ctl-z)
menu("Directory A-z",1,alt-z)
menu("Save f2",1,normal-f2)
menu("Save as... S-f2",1,shft-f2)
menu("Save changes A-f2",1,alt-f2)
menu("Close f3",1,normal-f3)
menu("Auto-close S-f3",1,shft-f3)
menu("Quit f4",1,normal-f4)
menu("Auto-Quit S-f4",1,shft-f4)
menu("About... ",1,shftAltCtl-a)
menu("Search fwd f9",2,normal-f9)
menu("Search bkwd S-f9",2,shft-f9)
menu("Replace fwd f10",2,normal-f10)
menu("Rpl all fwd A-f10",2,alt-f10)
menu("Rpl bkwd S-f10",2,shft-f10)
menu("Set search f7",2,normal-f7)
menu("Set replace f8",2,normal-f8)
menu("Search caps C-8",2,ctl-8)
menu("Set wildcard A-f7",2,alt-f7)
menu("Set eitherOr C-f7",2,ctl-f7)
menu("Tab->space SC-tab",2,shftCtl-tab)
menu("Space->tab SA-tab",2,shftAlt-tab)
menu("Speak hilite A-s",2,alt-s)
menu("Print hilite C-p",2,ctl-p)
menu("Free buffers A-f3",2,alt-f3)
menu("Edit buffer SA-f6",2,shftAlt-f6)
menu("Swap buffer C-w",2,ctl-w)
menu("See buffers SC-f6",2,shftCtl-f6)
menu("Show flags S-help",2,shft-help)
menu("Compile f6",3,normal-f6)
menu("Make command S-f6",3,shft-f6)
menu("Save config A-f6",3,alt-f6)
menu("Load config C-f6",3,ctl-f6)
menu("Swap keys AC-f6",3,altCtl-f6)
menu("Kill key SAC-f6",3,shftAltCtl-f6)
menu("Start learn C-s",3,ctl-s)
menu("Run learn C-r",3,ctl-r)
menu("Command mult C-m",3,ctl-m)
menu("Save learn C-5",3,ctl-5)
menu("Load learn C-6",3,ctl-6)
menu("Run learn # C-7",3,ctl-7)
menu("Favorite f5",4,normal-f5)
menu("Colors A-help",4,alt-help)
menu("OverStrike S-f5",4,shft-f5)
menu("AutoIndent A-f5",4,alt-f5)
menu("WordWrap C-f5",4,ctl-f5)
menu("Right justify A-j",4,alt-j)
menu("Tab space SAC-tab",4,shftAltCtl-tab)
menu("Line length C-rtn",4,ctl-return)
menu("Lines/page A-g",4,alt-g)
menu("End of line C-e",4,ctl-e)
menu("Read-only SA-f5",4,shftAlt-f5)
menu("AutoBackup SAC-f5",4,shftAltCtl-f5)
menu("Row/Column C-2",4,ctl-2)
menu("Mark gadgets C-g",4,ctl-g)
menu("Print Pref A-p",4,alt-p)
menu("Invisibles C-v",4,ctl-v)
menu("Busies C-b",4,ctl-b)
menu("Speak msgs SC-f5",4,shftCtl-f5)
menu("Spk alerts AC-f5",4,altCtl-f5)
menu("Use keys A-u",4,alt-u)
menu("Refresh C-help",5,ctl-help)
menu("Copy kp.",5,normal-kpDot)
menu("Cut kp-",5,normal-kpMinus)
menu("Paste kpEnter",5,normal-kpEnter)
menu("Clear C-h",5,ctl-h)
menu("Unhilite A-h",5,alt-h)
menu("I-Copy C-kp.",5,ctl-kpDot)
menu("I-Cut C-kp-",5,ctl-kpMinus)
menu("I-Paste C-kpEnter",5,ctl-kpEnter)
menu("I-Clear C-i",5,ctl-i)
menu("Uninvert A-i",5,alt-i)
menu("Reformat C-3",5,ctl-3)
menu("Del white-spc C-4",5,ctl-4)
menu("File size C-1",5,ctl-1)
runKey(shftAltCtl-z)
>
NOTE: shftAltCtl-z is executed automatically at startup. Normally no
command exists for it. During an edit session you can create and save one,
however, and it will be executed each time you start Uedit.
Press HELP if you want to see how to set up shftAltCtl-z to auto-load your
files.
---------------------------------------------------------------------------
Here is a description of how buffers are used in this file. If you make
changes which involve buffers, you should follow the convention in this list:
(You can change this convention entirely, of course.)
buf50-54 = used for temporary purposes in commands
buf49 = search string
buf48 = replace string
buf47 = copied hilite
buf46 = copied invert
buf45 = holds scratch deletes for Undo, keypad-0
buf44 = make-command buffer
buf43 = document names
buf42 = holds Help, if loaded
buf41 = used in buffer swapping command, ctl-w
buf40 = used for AmigaDOS commands
buf39 = used for result of AmigaDOS commands (if result selected)
buf38 = most recent directory name, if "Directory" has been selected
---------------------------------------------------------------------------
<normal-help: if (not isEmpty(buf42)) { toggle(curFile) freeBuf(buf42) }
else {
if (insertFile(buf42,sFile,"S:Help!")) {
editBuf(buf42)
flipFlag(buf42,readOnly)
flipFlag(buf42,changed)
} else putMsg("Couldn't find S:Help! file.")
} >
<shft-help: showFlags >
<alt-help: toggle(color) >
<ctl-help: refreshDisplay >
NOTE: There can be shft-closeBox, alt-closeBox, etc, commands also.
<normal-closeBox: runKey(normal-f4) > execute graceful quit key
<normal-gadget1: vScroll(sPage) >
<normal-gadget2: vScroll(ePage) >
<normal-gadget3: toggle(favorite) >
<normal-gadget4: toggle(curFile) >
<normal-upArrow: vScroll(upLine) >
<normal-downArrow: vScroll(downLine) >
<normal-leftArrow: hScroll(eChar) >
<normal-rightArrow: hScroll(sChar) >
<shft-upArrow: do (n54,1,11) vScroll(upLine) >
<shft-downArrow: do (n54,1,11) vScroll(downLine) >
<shft-leftArrow: do (n54,1,10) hScroll(eChar) >
<shft-rightArrow: do (n54,1,10) hScroll(sChar) >
<alt-upArrow: vScroll(sPage) >
<alt-downArrow: vScroll(ePage) >
<alt-leftArrow: do (n54,1,20) hScroll(eChar) >
<alt-rightArrow: do (n54,1,20) hScroll(sChar) >
<ctl-upArrow: vScroll(sFile) >
<ctl-downArrow: vScroll(eFile) >
<ctl-leftArrow: equateNum(n54,lineLength)
do (n53,1,n54) hScroll(eChar) >
<ctl-rightArrow: while (hScroll(sChar)) nothing >
place cursor
<normal-buttonDown: moveCursor(curFile,mouseLoc) >
set start of hilite
<shft-buttonDown: equateLoc(curFile,sHilite,mouseLoc) refreshDisplay >
set end of hilite
<alt-buttonDown: equateLoc(curFile,eHilite,mouseLoc) refreshDisplay >
load filename that is clicked
<ctl-buttonDown:
equateLoc(curFile,atCursor,mouseLoc)
if (not is(curFile,whiteSpace)) {
while (not is(curFile,whiteSpace))
{ moveCursor(curFile,sChar) if (is(curFile,sFile)) goto label(1) }
label(1)
while (is(curFile,whiteSpace)) moveCursor(curFile,eChar)
equateLoc(curFile,sInvert,atCursor)
while (not is(curFile,whiteSpace)) moveCursor(curFile,eChar)
equateLoc(curFile,eInvert,atCursor)
refreshDisplay
freeBuf(buf54)
insertRgn(buf54,sFile,buf38,all)
insertRgn(buf54,eFile,curFile,invert)
loadFile(buf54)
} >
Click or drag mouse, put word/phrase into index in buf41. (Ctl-w to see.)
<shftAlt-buttonDown:
equateLoc(curFile,atCursor,mouseLoc)
moveCursor(curFile,eWord)
equateLoc(curFile,eInvert,atCursor)
moveCursor(curFile,sWord)
equateLoc(curFile,sInvert,atCursor) >
((See shftAlt-buttonDown and shftAlt-i.))
<shftAlt-buttonUp:
equateLoc(curFile,atCursor,mouseLoc)
moveCursor(curFile,eWord)
equateLoc(curFile,eInvert,atCursor)
if (geLoc(curFile,sInvert,eInvert)) returnFalse
moveCursor(curFile,sInvert)
if (is(curFile,upperCase)) equateNum(n0,1)
else equateNum(n0,0)
toLower(curFile)
copyChar(curFile,n54)
if (eqNum(n0,1)) toUpper(curFile)
if (isEmpty(buf41)) insertChar(buf41,eLine)
moveCursor(buf41,sFile)
equateLoc(buf41,sPage,atCursor)
label(1)
if (is(buf41,upperCase)) equateNum(n0,1)
else equateNum(n0,0)
toLower(buf41)
copyChar(buf41,n53)
if (eqNum(n0,1)) toUpper(buf41)
if (gtNum(n54,n53)) {
moveCursor(buf41,downLine)
if (not is(buf41,eFile)) goto label(1)
}
insertRgn(buf41,atCursor,curFile,invert)
insertChar(buf41,eLine)
>
set start of invert
<shftCtl-buttonDown: equateLoc(curFile,sInvert,mouseLoc) refreshDisplay >
set end of invert
<altCtl-buttonDown: equateLoc(curFile,eInvert,mouseLoc) refreshDisplay >
drag mouse and create hilite
<shftAltCtl-buttonDown:
equateLoc(curFile,locA,mouseLoc)
while (trackMouse) nothing
if (gtLoc(curFile,locA,mouseLoc))
{ equateLoc(curFile,sHilite,mouseLoc) equateLoc(curFile,eHilite,locA) }
else
{ equateLoc(curFile,eHilite,mouseLoc) equateLoc(curFile,sHilite,locA) }
refreshDisplay >
switch to next file
<normal-f1: toggle(curFile) >
switch to next favorite
<shft-f1: toggle(favorite) >
<alt-f1: putMsg("Input new filename:")
freeBuf(buf43)
if (inputString(buf43)) loadFile(buf43) >
open new blank file buffer
<ctl-f1: newFile >
<shftAlt-f1: putMsg("Input filename to insert:")
freeBuf(buf43)
if (inputString(buf43)) insertFile(curFile,atCursor,buf43) >
<shftCtl-f1: if (not askYesNo("Restore file to original?"))
returnFalse
if (getFileName(buf43,curFile))
{ freeBuf(curFile) loadFile(buf43) } >
save file currently in window
<normal-f2: saveFile(curFile) >
<shft-f2: putMsg("Save file as:")
freeBuf(buf43)
if (inputString(buf43)) if (setFileName(curFile,buf43))
saveFile(curFile) >
save all changed files
<alt-f2: do(n54,0,19)
if (getFlag(buf[n54],changed)) saveFile(buf[n54]) >
<normal-f3: if (getFlag(curFile,changed))
if (askYesNo("Save changes before closing?"))
if (not saveFile(curFile)) returnFalse
freeBuf(curFile) >
save file, if changed, then close it
<shft-f3: if (getFlag(curFile,changed)) if (not saveFile(curFile))
returnFalse
freeBuf(curFile) >
free all buffers
<alt-f3: do(n54,20,54) freeBuf(buf[n54]) >
<normal-f4: if (not askYesNo("Really quit?")) returnFalse
equateNum(n53,0)
do(n54,0,19) if (getFlag(buf[n54],changed)) equateNum(n53,1)
if (eqNum(n53,1)) if (askYesNo("Save changes?")) runKey(shft-f4)
quit >
save all changed files, then quit
<shft-f4: do (n54,0,19) if (getFlag(buf[n54],changed))
if (not saveFile(buf[n54])) returnFalse
quit >
quit WITHOUT saving any files
<alt-f4: quit >
switch flag settings:
<normal-f5: flipFlag(curFile,favorite) >
<shft-f5: flipFlag(curFile,overstrike) >
<alt-f5: flipFlag(curFile,autoIndent) >
<ctl-f5: flipFlag(curFile,wordWrap) >
<shftAlt-f5: flipFlag(curFile,readOnly) >
<shftCtl-f5: flipFlag(curFile,speakMsgs) >
<altCtl-f5: flipFlag(curFile,speakAlerts) >
<shftAltCtl-f5: flipFlag(curFile,autoBackup) >
compile command in current buffer in window
<normal-f6: compile >
select buffer 44 to use for writing commands
<shft-f6: editBuf(buf44)
putMsg("Type in command, <anykey: etc>, and press F6 to compile:") >
save editor config to disk
<alt-f6:
if (askYesNo("Save config?")) {
putMsg("Input data filename or ESC:")
freeBuf(buf54)
inputString(buf54)
saveConfig(buf54)
} >
restore editor config from disk
<ctl-f6:
if (askYesNo("Load config?")) {
putMsg("Input data filename or ESC:")
freeBuf(buf54)
inputString(buf54)
loadConfig(buf54)
} >
edit a buffer
<shftAlt-f6: putMsg("Input number of buffer to edit:")
if (inputNum(n54)) editBuf(buf[n54]) >
examine all buffers that aren't empty
<shftCtl-f6: do (n54,20,54) if (not isEmpty(buf[n54])) {
editBuf(buf[n54])
refreshDisplay
putMsg("F1=continue, F2=edit this one, F3=stop:")
getKey(n53)
if (eqNum(n53,normal-f2)) { putMsg(" ") returnTrue }
if (eqNum(n53,normal-f3)) goto label(1)
}
label(1)
toggle(curFile)
putMsg(" ") >
swap anything, including mouse clicks, menu selections, gadgets, keys
<altCtl-f6: putMsg("Next 2 function-keys will be swapped!")
if (getKey(n53)) if (getKey(n54)) if (swapKey(n53,n54))
{ putMsg("Keys were swapped.") returnTrue }
putMsg(" ") >
kill command, including mouse clicks, menu selections, gadgets, keys
<shftAltCtl-f6:
putMsg("Next command-key will be deleted!")
if (getKey(n54)) if (killKey(n54))
{ putMsg("Key command was deleted.") returnTrue }
putMsg(" ") >
input search text to use, including either-or "$" and wildcards "?"
<normal-f7: freeBuf(buf49) runKey(shft-f7) >
modify existing search text
<shft-f7: putMsg("Input search string:")
inputString(buf49)
runKey(normal-f9) >
<alt-f7: putMsg("Input new search wild-card char:")
freeBuf(buf49)
if (inputString(buf49))
{ moveCursor(buf49,sFile) copyChar(buf49,wildCard) } >
<ctl-f7: putMsg("Input new search either-or char:")
freeBuf(buf49)
if (inputString(buf49))
{ moveCursor(buf49,sFile) copyChar(buf49,eitherOr) } >
input replace text
<normal-f8: freeBuf(buf48) runKey(shft-f8) >
modify existing replace text
<shft-f8: putMsg("input replace string:") inputString(buf48) >
NOTE: returnTrue is needed below because "thisKey" could return a False even
though search() returned True. returnFalse is needed because equateLoc()
will return a True:
search forward, invert "matched" region, put cursor at start of region
<normal-f9: if (eqLoc(curFile,atCursor,eInvert)) moveCursor(curFile,sChar)
if (search(curFile,sInvert,eInvert,buf49,eChar)) {
if (thisKey) if (not onScreen(atCursor)) vScroll(atCursor)
returnTrue
}
putMsg("Search failed.")
equateLoc(curFile,sInvert,eInvert)
returnFalse >
search backward
<shft-f9: if (search(curFile,sInvert,eInvert,buf49,sChar)) {
if (thisKey) if (not onScreen(atCursor)) vScroll(atCursor)
returnTrue
}
putMsg("Search failed.")
equateLoc(curFile,sInvert,eInvert)
returnFalse >
replace "matched" region, then search forward
<normal-f10: if (eqLoc(curFile,sInvert,eInvert)) returnFalse
clearRgn(curFile,invert)
insertRgn(curFile,sInvert,buf48,all)
runKey(normal-f9) >
replace "matched" region, then search backward
<shft-f10: if (eqLoc(curFile,sInvert,eInvert)) returnFalse
clearRgn(curFile,invert)
insertRgn(curFile,sInvert,buf48,all)
runKey(shft-f9) >
replace-all forward
<alt-f10: while(runKey(normal-f10)) nothing >
These use the Keypad Keys below - be sure and change them if you change the
Keypad Keys:
<shft-bs: runKey(normal-kp7) > delete word left
<shft-del: runKey(normal-kp9) > delete word right
<alt-bs: runKey(alt-kp7) > delete line left
<alt-del: runKey(alt-kp9) > delete line right
<ctl-bs: runKey(ctl-kp7) > delete page left
<ctl-del: runKey(ctl-kp9) > delete page right
---------------------------- Keypad Keys ----------------------------------
find cursor
<normal-kp5: vScroll(atCursor) >
delete word left
<normal-kp7: if (not eqLoc(curFile,locB,atCursor)) freeBuf(buf45)
equateLoc(curFile,locB,atCursor)
moveCursor(curFile,sWord)
equateLoc(curFile,locA,atCursor)
insertRgn(buf45,sFile,curFile,loc)
clearRgn(curFile,loc) >
delete word right
<normal-kp9: if (not eqLoc(curFile,locB,atCursor)) freeBuf(buf45)
equateLoc(curFile,locA,atCursor)
moveCursor(curFile,eWord)
equateLoc(curFile,locB,atCursor)
insertRgn(buf45,eFile,curFile,loc)
clearRgn(curFile,loc) >
<normal-kp8: moveCursor(curFile,upLine) >
<normal-kp2: moveCursor(curFile,downLine) >
<normal-kp4: moveCursor(curFile,sWord) >
<normal-kp6: moveCursor(curFile,eWord) >
set start of hilite at cursor
<normal-kp1: equateLoc(curFile,sHilite,atCursor) refreshDisplay >
set end of hilite at cursor
<normal-kp3: equateLoc(curFile,eHilite,atCursor) refreshDisplay >
UNDO scratch deletes, inserting scratch delete buffer at cursor
<normal-kp0: insertRgn(curFile,atCursor,buf45,all) >
copy hilite region into buffer
<normal-kpDot: if (not eqLoc(curFile,sHilite,eHilite))
{ freeBuf(buf47) insertRgn(buf47,sFile,curFile,hilite) }
else returnFalse >
copy hilite region into buffer, then delete hilite region
<normal-kpMinus: if (runKey(normal-kpDot)) clearRgn(curFile,hilite) >
insert copied hilite at cursor
<normal-kpEnter: insertRgn(curFile,atCursor,buf47,all)
if (not onScreen(atCursor)) vScroll(atCursor) >
<shft-kp5: vScroll(atCursor) >
delete character left
<shft-kp7: if (not eqLoc(curFile,locB,atCursor)) freeBuf(buf45)
equateLoc(curFile,locB,atCursor)
moveCursor(curFile,sChar)
equateLoc(curFile,locA,atCursor)
insertRgn(buf45,sFile,curFile,loc)
clearRgn(curFile,loc) >
delete character under cursor
<shft-kp9: if (not eqLoc(curFile,locB,atCursor)) freeBuf(buf45)
equateLoc(curFile,locA,atCursor)
moveCursor(curFile,eChar)
equateLoc(curFile,locB,atCursor)
insertRgn(buf45,eFile,curFile,loc)
clearRgn(curFile,loc) >
<shft-kp8: moveCursor(curFile,upLine) >
<shft-kp2: moveCursor(curFile,downLine) >
<shft-kp4: moveCursor(curFile,sChar) >
<shft-kp6: moveCursor(curFile,eChar) >
<shft-kp1: runKey(normal-kp1) >
<shft-kp3: runKey(normal-kp3) >
<shft-kp0: runKey(normal-kp0) >
<shft-kpDot: runKey(normal-kpDot) >
<shft-kpMinus: runKey(normal-kpMinus) >
<shft-kpEnter: runKey(normal-kpEnter) >
<alt-kp5: vScroll(atCursor) >
delete line left
<alt-kp7: if (not eqLoc(curFile,locB,atCursor)) freeBuf(buf45)
if (is(curFile,sLine)) runKey(shft-kp7)
else {
equateLoc(curFile,locB,atCursor)
moveCursor(curFile,sLine)
equateLoc(curFile,locA,atCursor)
insertRgn(buf45,sFile,curFile,loc)
clearRgn(curFile,loc)
} >
delete line right
<alt-kp9: if (not eqLoc(curFile,locB,atCursor)) freeBuf(buf45)
if (is(curFile,eLine)) runKey(shft-kp9)
else {
equateLoc(curFile,locA,atCursor)
moveCursor(curFile,eLine)
equateLoc(curFile,locB,atCursor)
insertRgn(buf45,eFile,curFile,loc)
clearRgn(curFile,loc)
} >
<alt-kp8: moveCursor(curFile,upLine) >
<alt-kp2: moveCursor(curFile,downLine) >
<alt-kp4: moveCursor(curFile,sLine) >
<alt-kp6: moveCursor(curFile,eLine) >
<alt-kp1: runKey(normal-kp1) >
<alt-kp3: runKey(normal-kp3) >
<alt-kp0: runKey(normal-kp0) >
<alt-kpDot: runKey(normal-kpDot) >
<alt-kpMinus: runKey(normal-kpMinus) >
<alt-kpEnter: runKey(normal-kpEnter) >
<ctl-kp5: vScroll(atCursor) >
delete to start of page
<ctl-kp7: if (not eqLoc(curFile,locB,atCursor)) freeBuf(buf45)
equateLoc(curFile,locB,atCursor)
moveCursor(curFile,sPage)
equateLoc(curFile,locA,atCursor)
insertRgn(buf45,sFile,curFile,loc)
clearRgn(curFile,loc)
vScroll(atCursor) >
delete to end of page
<ctl-kp9: if (not eqLoc(curFile,locB,atCursor)) freeBuf(buf45)
equateLoc(curFile,locA,atCursor)
moveCursor(curFile,ePage)
equateLoc(curFile,locB,atCursor)
insertRgn(buf45,eFile,curFile,loc)
clearRgn(curFile,loc) >
<ctl-kp8: moveCursor(curFile,sPage) vScroll(atCursor) >
<ctl-kp2: moveCursor(curFile,ePage) vScroll(atCursor) >
<ctl-kp4: moveCursor(curFile,sLine) >
<ctl-kp6: moveCursor(curFile,eLine) >
set start of invert at cursor
<ctl-kp1: equateLoc(curFile,sInvert,atCursor) refreshDisplay >
set end of invert at cursor
<ctl-kp3: equateLoc(curFile,eInvert,atCursor) refreshDisplay >
<ctl-kp0: runKey(normal-kp0) >
copy invert region into buffer
<ctl-kpDot: if (not eqLoc(curFile,sInvert,eInvert))
{ freeBuf(buf46) insertRgn(buf46,sFile,curFile,invert) }
else returnFalse >
copy, then delete, invert region
<ctl-kpMinus: runKey(ctl-kpDot) clearRgn(curFile,invert) >
insert copied invert region at cursor
<ctl-kpEnter: insertRgn(curFile,atCursor,buf46,all)
if (not onScreen(atCursor)) vScroll(atCursor) >
------------------------- miscellaneous keys -------------------------------
<ctl-return: putMsg("Enter new line-length:")
if (inputNum(n54)) if (gtNum(n54,0))
{ setLocal(curFile,lineLength,n54) equateNum(lineLength,n54) } >
transparent tab fwd
<shft-tab: while (moveCursor(curFile,eChar)) {
if (is(curFile,sLine)) returnTrue
if (is(curFile,tabColumn)) returnTrue
}
returnFalse >
transparent tab bkwd
<alt-tab: while (moveCursor(curFile,sChar)) {
if (is(curFile,sLine)) returnTrue
if (is(curFile,tabColumn)) returnTrue
}
returnFalse >
untab - delete spaces back to prev tab column
<ctl-tab: equateNum(n53,tabSpacing)
do (n54,1,n53) {
moveCursor(curFile,sChar)
if (is(curFile,space)) clearChar(curFile)
else { moveCursor(curFile,eChar) returnFalse }
if (is(curFile,tabColumn)) returnTrue
} >
<shftAlt-tab: putMsg("Converting spaces to TABs....")
spacesToTabs putMsg(" ") >
<shftCtl-tab: putMsg("Converting TABs to spaces....")
tabsToSpaces putMsg(" ") >
<shftAltCtl-tab:
putMsg("Enter new tab spacing:")
if (inputNum(n54)) if (gtNum(n54,0))
{ setLocal(curFile,tabSpacing,n54) equateNum(tabSpacing,n54) } >
trim spaces between next 2 words
<ctl-b: flipFlag(curFile,busies) >
trim spaces between words
<alt-c: while (not is(curFile,space))
{ moveCursor(curFile,eChar) if (is(curFile,eFile)) returnTrue }
moveCursor(curFile,eChar)
while (is(curFile,space)) clearChar(curFile) >
input a ctl-character, such as formfeed, into text at cursor
<ctl-c: putMsg("Input a control character:") inputCtlChar >
input a command and count number of times executed
<shftAlt-c: equateNum(n54,0)
putMsg("Input command to execute & count:")
if (getKey(n53)) {
while (runKey(n53)) incNum(n54)
freeBuf(buf54)
insertRgn(buf54,sFile,"Times executed = ",all)
toWord(buf54,n54)
putMsg(buf54)
} >
delay # tenths of seconds stored in n46 (see shftAlt-d)
<alt-d: delay(n46) >
delete entire line
<ctl-d: if (not eqLoc(curFile,locB,atCursor)) freeBuf(buf45)
equateLoc(curFile,locB,atCursor)
if (not is(curFile,sLine)) moveCursor(curFile,sLine)
if (not eqLoc(curFile,locB,atCursor)) {
equateLoc(curFile,locA,atCursor)
insertRgn(buf45,sFile,curFile,loc)
clearRgn(curFile,loc)
} else equateLoc(curFile,locA,atCursor)
if (not is(curFile,eLine)) moveCursor(curFile,eLine)
moveCursor(curFile,eChar)
equateLoc(curFile,locB,atCursor)
insertRgn(buf45,eFile,curFile,loc)
clearRgn(curFile,loc) >
<shftAlt-d: putMsg("Input # tenths of seconds (used in delays)")
inputNum(n46) >
<alt-e: putMsg("Input new end-of-line value (usually 10 or 13):")
inputNum(n54)
setEol(n54)
refreshDisplay >
<ctl-e:
putMsg("Input file's current end-of-line value (usually 10 or 13):")
inputNum(n54)
if (not gtNum(n54,0)) returnFalse
putMsg("Input new end-of-line value (usually 10 or 13):")
inputNum(n53)
if (not gtNum(n53,0)) returnFalse
setEol(n54)
moveCursor(curFile,sFile)
putMsg("Changing eol characters ... hit Amiga-ESC to abort.")
while (moveCursor(curFile,eLine))
if (is(curFile,n54)) swapChar(curFile,n53)
setEol(n53)
vScroll(sFile)
putMsg(" ")
refreshDisplay >
<alt-f: putMsg("Input buffer # to free:")
inputNum(n54)
freeBuf(buf[n54]) >
flip upper/lower case of character under cursor
<ctl-f: if (is(curFile,alpha)) {
if (is(curFile,lowerCase)) toUpper(curFile)
else toLower(curFile)
}
moveCursor(curFile,eChar) >
<ctl-g: flipFlag(curFile,markGadgets) >
<alt-g: putMsg("Enter new lines/page:")
if (inputNum(n54))
{ setLocal(curFile,pageLines,n54) equateNum(pageLines,n54) } >
unhilite the hilite
<alt-h: equateLoc(curFile,sHilite,eHilite) refreshDisplay >
clear hilite region - No Copy is made
<ctl-h: clearRgn(curFile,hilite) >
uninvert the invert
<alt-i: equateLoc(curFile,sInvert,eInvert) refreshDisplay >
clear invert region - No Copy is made
<ctl-i: clearRgn(curFile,invert) >
Scan list in buf41, create index. ((See shftAlt-buttonDown & buttonUp.))
<shftAlt-i:
if (isEmpty(buf41)) returnFalse
runKey(alt-g)
freeBuf(buf54)
label(1)
moveCursor(buf41,sFile)
while (is(buf41,whiteSpace)) clearChar(buf41)
if (is(buf41,eFile)) {
swapBuf(buf54,buf41)
freeBuf(buf54)
setFileName(buf41,"Index")
equateLoc(buf41,sPage,sFile)
equateLoc(buf41,atCursor,sFile)
putMsg("Press ctl-w to see Index")
returnTrue
}
freeBuf(buf49)
insertRgn(buf49,sFile,buf41,line)
clearRgn(buf41,line)
putMsg(buf49)
moveCursor(buf54,eFile)
insertRgn(buf54,eFile,buf49,all)
insertRgn(buf54,eFile," ",all)
insertChar(buf54,eLine)
moveCursor(buf54,sChar)
equateNum(n53,0)
moveCursor(curFile,sFile)
label(2)
while (search(curFile,sInvert,eInvert,buf49,eChar)) {
moveCursor(curFile,sChar)
if (is(curFile,alpha)) {
label(3)
moveCursor(curFile,eInvert)
goto label(2)
}
if (is(curFile,digit)) goto label(3)
moveCursor(curFile,eInvert)
if (is(curFile,alpha)) goto label(2)
if (is(curFile,digit)) goto label(2)
locToLine(curFile,n54,atCursor)
div(n54,n54,pageLines)
incNum(n54)
if (not eqNum(n54,n53)) {
if (not eqNum(n53,0)) insertChar(buf54,",")
toWord(buf54,n54)
equateNum(n53,n54)
}
}
goto label(1)
>
<alt-j: flipFlag(curFile,rightJustify) >
join two lines together
<ctl-j: if (not is(curFile,eLine)) moveCursor(curFile,eLine)
equateLoc(curFile,locA,atCursor)
label(1)
moveCursor(curFile,eChar)
if (is(curFile,space)) goto label(1)
equateLoc(curFile,locB,atCursor)
clearRgn(curFile,loc)
insertRgn(curFile,atCursor," ",all) >
move hilite region to left by one space
<alt-l: moveCursor(curFile,sHilite)
if (not is(curFile,sLine)) moveCursor(curFile,sLine)
label(1)
if (is(curFile,space)) clearChar(curFile)
if (not is(curFile,eLine)) moveCursor(curFile,eLine)
moveCursor(curFile,eChar)
if (gtLoc(curFile,eHilite,atCursor)) goto label(1) >
convert char under cursor to lower case
<ctl-l: toLower(curFile) moveCursor(curFile,eChar) >
<ctl-m: putMsg("Input command multiplier:") inputNum(cmdMultiplier) >
rename document in window
<alt-n: putMsg("Input new filename:")
getFileName(buf43,curFile)
if (inputString(buf43))
setFileName(curFile,buf43) >
go to line number in text
<ctl-n: putMsg("Input line number:")
if (inputNum(n54))
{ lineToLoc(curFile,atCursor,n54) vScroll(atCursor) } >
open cursor line for typing
<ctl-o: insertChar(curFile,eLine) moveCursor(curFile,sChar) >
print hilite region
<ctl-p: print(curFile,hilite) >
switch between printing thru parallel port and through Amiga Preferences
<alt-p: flipFlag(curFile,prefPrint) >
move hilite region to right by one space
<alt-r: moveCursor(curFile,sHilite)
if (not is(curFile,sLine)) moveCursor(curFile,sLine)
label(1)
if (gtLoc(curFile,eHilite,atCursor)) {
insertChar(curFile," ")
if (not is(curFile,eLine)) moveCursor(curFile,eLine)
moveCursor(curFile,eChar)
goto label(1)
} >
run whatever is stored in learn-buffer
<ctl-r: runLearn >
speak the hilite region a line at a time
<alt-s: if (gtLoc(curFile,eHilite,sHilite)) {
equateLoc(curFile,locA,atCursor)
equateLoc(curFile,sInvert,sHilite)
equateLoc(curFile,atCursor,sHilite)
while (gtLoc(curFile,eHilite,sInvert)) {
if (not is(curFile,eLine)) moveCursor(curFile,eLine)
moveCursor(curFile,eChar)
if (gtLoc(curFile,atCursor,eHilite))
equateLoc(curFile,eInvert,eHilite)
else equateLoc(curFile,eInvert,atCursor)
if (gtLoc(curFile,eInvert,sInvert)) {
freeBuf(buf50)
insertRgn(buf50,sFile,curFile,invert)
speak(buf50)
}
equateLoc(curFile,sInvert,atCursor)
}
equateLoc(curFile,atCursor,locA)
} >
start/abort Learn Mode
<ctl-s: if (not getFlag(curFile,learnMode)) putMsg("LEARN MODE ACTIVE!")
else putMsg("Learn Mode cancelled.")
flipFlag(curFile,learnMode) >
Use keys for character/number input
<alt-u: flipFlag(curFile,useKeys)>
switch char under cursor to upper case
<ctl-u: toUpper(curFile) moveCursor(curFile,eChar) >
switch flag that makes control-characters visible/invisible
<ctl-v: flipFlag(curFile,spooks) refreshDisplay >
swap current buffer in window with buffer 41
<ctl-w: swapBuf(curFile,buf41) >
for programmers: toggle number under cursor betw hexadecimal/decimal
<ctl-x: hexDecimal(curFile) >
execute AmigaDOS command but don't collect the results
<ctl-y: putMsg("Enter AmigaDOS command")
freeBuf(buf40)
inputString(buf40)
if (not isEmpty(buf40)) execute(" ",buf40) >
execute AmigaDOS command and collect results
<ctl-z: putMsg("Enter AmigaDOS command")
freeBuf(buf40)
inputString(buf40)
if (isEmpty(buf40)) returnFalse
freeBuf(buf39)
if (not execute(buf39,buf40)) returnFalse
if (not isEmpty(buf39))
{ putMsg("Result of AmigaDOS command:") editBuf(buf39) }
else
{ putMsg("No message from AmigaDOS.") freeBuf(buf39) } >
get a directory - this sets directoryname in buf38 that is used in click-
loading files (see ctl-buttonDown)
<alt-z: putMsg("Enter directory: ")
freeBuf(buf38)
inputString(buf38)
freeBuf(buf54)
insertRgn(buf54,eFile,"Dir ",all)
insertRgn(buf54,eFile,buf38,all)
if (not execute(buf39,buf54)) returnFalse
moveCursor(buf38,eFile)
moveCursor(buf38,sChar)
if (not isEmpty(buf38)) if (not is(buf38,":"))
insertRgn(buf38,eFile,"/",all)
insertRgn(buf39,sFile,"
",all)
insertRgn(buf39,sFile,buf38,all)
newFile
swapBuf(buf39,curFile)
freeBuf(buf39)
vScroll(sFile)
putMsg("To load files, ctrl-click names with mouse.")
setFileName(curFile,buf54)
flipFlag(curFile,changed) >
match columns
<alt-0: equateNum(n43,n44)
runKey(alt-7)
while (gtNum(n43,n44)) {
insertChar(curFile,32)
decNum(n43)
}
while (gtNum(n44,n43)) {
moveCursor(curFile,sChar)
if (not is(curFile," ")) returnFalse
incNum(n43)
clearChar(curFile)
} >
clear leading white space
<alt-1: if (not is(curFile,sLine)) moveCursor(curFile,sLine)
while (is(curFile,whiteSpace)) {
if (is(curFile,eLine)) returnTrue
clearChar(curFile)
} >
center text in line
<alt-2: runKey(alt-1)
equateNum(n54,lineLength)
do (n53,1,n54) {
if (is(curFile,eLine)) goto label(1)
incLoc(curFile,atCursor)
}
label(1)
if (gtNum(lineLength,n53)) {
if (not is(curFile,sLine)) moveCursor(curFile,sLine)
sub(n53,lineLength,n53)
div(n53,n53,2)
do (n54,2,n53) insertChar(curFile," ")
} >
go to page #
<alt-3: putMsg("Go to page #:")
if (inputNum(n54)) if (gtNum(pageLines,1)) {
sub(n54,n54,1)
mul(n54,n54,pageLines)
moveCursor(curFile,sFile)
do (n53,1,n54) moveCursor(curFile,downLine)
} else putMsg("Lines/page not defined")>
match indent of prev line
<alt-4: if (not is(curFile,sLine)) moveCursor(curFile,sLine)
if (is(curFile,sFile)) returnFalse
moveCursor(curFile,sLine)
equateNum(n54,0)
while (is(curFile,space)) {
incLoc(curFile,atCursor)
incNum(n54)
}
moveCursor(curFile,downLine)
if (not is(curFile,sLine)) moveCursor(curFile,sLine)
equateNum(n53,0)
while (is(curFile,space)) {
incLoc(curFile,atCursor)
incNum(n53)
}
if (not is(curFile,sLine)) moveCursor(curFile,sLine)
while (gtNum(n54,n53)) {
insertChar(curFile,32)
incNum(n53)
}
while (gtNum(n53,n54)) {
clearChar(curFile)
decNum(n53)
} >
justify right
<alt-5: equateLoc(curFile,locA,atCursor)
runKey(alt-6)
equateLoc(curFile,atCursor,locA)
decNum(n45)
while (gtNum(lineLength,n45)) {
insertChar(curFile,32)
incNum(n45)
}
while (gtNum(n45,lineLength)) {
moveCursor(curFile,sChar)
if (not is(curFile,32)) returnFalse
clearChar(curFile)
decNum(n45)
} >
store cursor line length in n45
<alt-6: equateLoc(curFile,locA,atCursor)
if (not is(curFile,sLine)) moveCursor(curFile,sLine)
do (n45,1,999999999) {
if (is(curFile,eLine)) goto label(1)
moveCursor(curFile,eChar)
}
label(1)
equateLoc(curFile,atCursor,locA) >
store cursor col in n44
<alt-7: equateLoc(curFile,locA,atCursor)
if (not is(curFile,sLine)) moveCursor(curFile,sLine)
do (n44,1,999999999) {
if (eqLoc(curFile,atCursor,locA)) goto label(1)
if (is(curFile,eLine)) goto label(1)
moveCursor(curFile,eChar)
}
label(1)
equateLoc(curFile,atCursor,locA) >
Show value of n-variable
<alt-8: putMsg("n-variable #: ")
inputNum(n54)
freeBuf(buf54)
insertChar(buf54,"n")
toWord(buf54,n54)
insertRgn(buf54,eFile," is ",all)
toWord(buf54,n[n54])
putMsg(buf54) >
Set value of n-variable
<alt-9: putMsg("Set n-variable #:")
inputNum(n54)
putMsg("To value:")
inputNum(n[n54])>
tell what ASCII value is of char under cursor (use to ID ctl-chars)
<ctl-/: copyChar(curFile,n54)
freeBuf(buf54)
toWord(buf54,n54)
insertRgn(buf54,sFile,"Character value under cursor was ",all)
putMsg(buf54)
moveCursor(curFile,eChar) >
display file-size in message line (if slow, it packed file first)
<ctl-1: fileSize(curFile,n54)
freeBuf(buf54)
insertRgn(buf54,sFile,"File size in bytes: ",all)
toWord(buf54,n54)
putMsg(buf54)>
<ctl-2: flipFlag(curFile,rowCol) >
reformat paragraph
<ctl-3: putMsg("Reformatting...")
if (reformat) moveCursor(curFile,downLine)
putMsg(" ")>
delete trailing white-space in entire document
<ctl-4: equateLoc(curFile,locA,atCursor)
moveCursor(curFile,sFile)
label(1)
if (is(curFile,eFile))
{ equateLoc(curFile,atCursor,locA) returnTrue }
moveCursor(curFile,eLine)
moveCursor(curFile,sChar)
while (is(curFile,space))
{ clearChar(curFile) moveCursor(curFile,sChar) }
moveCursor(curFile,eLine)
goto label(1) >
save learn-sequence to disk
<ctl-5: putMsg("Save Learn under what #?")
if (inputNum(n54)) saveLearn(n54) >
load a learn-sequence stored on disk
<ctl-6: putMsg("Load what Learn #?")
if (inputNum(n54)) loadLearn(n54) >
both load & run a learn-sequence stored on disk
<ctl-7: putMsg("Input learn # to load & run:")
if (inputNum(n54)) if (loadLearn(n54)) runLearn >
<ctl-8: flipFlag(curFile,searchCaps) >
arithmetic commands:
set running total to zer0
<ctl-0: equateNum(n49,0)
equateNum(n48,0)
equateNum(n47,0) >
type running total into text at cursor
<ctl-\: freeBuf(buf54)
if (eqNum(n47,1)) insertChar(buf54,"-")
toWord(buf54,n49)
insertChar(buf54,".")
if (gtNum(10,n48)) insertChar(buf54,"0")
toWord(buf54,n48)
insertRgn(curFile,atCursor,buf54,all)
insertRgn(buf54,sFile,"Inserted total into text ",all)
putMsg(buf54) >
add next word (if a number) to running total & display total
<ctl-=: moveCursor(curFile,eWord)
moveCursor(curFile,sWord)
toNumber(n54,curFile)
moveCursor(curFile,eWord)
equateNum(n53,0)
if (is(curFile,".")) {
moveCursor(curFile,eChar)
toNumber(n53,curFile)
moveCursor(curFile,eWord)
}
mul(n49,n49,100)
add(n49,n49,n48)
mul(n54,n54,100)
add(n54,n54,n53)
if (eqNum(n47,1)) {
if (gtNum(n54,n49)) { equateNum(n47,0) sub(n49,n54,n49) }
else sub(n49,n49,n54)
} else add(n49,n49,n54)
mod(n48,n49,100)
div(n49,n49,100)
freeBuf(buf54)
if (eqNum(n47,1)) insertChar(buf54,"-")
toWord(buf54,n49)
insertChar(buf54,".")
if (gtNum(10,n48)) insertChar(buf54,"0")
toWord(buf54,n48)
insertRgn(buf54,sFile,"Running total is ",all)
putMsg(buf54) >
subtract next word (if a number) from running total & display total
<ctl--: moveCursor(curFile,eWord)
moveCursor(curFile,sWord)
toNumber(n54,curFile)
moveCursor(curFile,eWord)
equateNum(n53,0)
if (is(curFile,".")) {
moveCursor(curFile,eChar)
toNumber(n53,curFile)
moveCursor(curFile,eWord)
}
mul(n49,n49,100)
add(n49,n49,n48)
mul(n54,n54,100)
add(n54,n54,n53)
if (eqNum(n47,0)) {
if (gtNum(n54,n49)) { equateNum(n47,1) sub(n49,n54,n49) }
else sub(n49,n49,n54)
} else add(n49,n49,n54)
mod(n48,n49,100)
div(n49,n49,100)
freeBuf(buf54)
if (eqNum(n47,1)) insertChar(buf54,"-")
toWord(buf54,n49)
insertChar(buf54,".")
if (gtNum(10,n48)) insertChar(buf54,"0")
toWord(buf54,n48)
insertRgn(buf54,sFile,"Running total is ",all)
putMsg(buf54) >
-------------------------- end of Config! ----------------------------------
Erase these commands after you are through with them. That'll reduce the
size of the data file.
Do NOT take these out of the Config! that is in Uedit.arc!
Distribute ONLY the original Uedit.arc file!
When you erase this, be sure to delete the "About..." menu item above.
<shftAltCtl-a:
freeBuf(buf54)
editBuf(buf54)
setFileName(buf54," About Uedit...")
putMsg(" ")
insertRgn(buf54,sFile,
"
Uedit V1.8
Copyright (C) 1986-87, Rick Stiles
Uedit V1.8 is a ShareWare program. Copy and distribute Uedit.arc to friends
and bulletin boards.
Distribute only the original Uedit.arc.
Uedit must not be used for commercial purposes without my permission.
If you find Uedit useful, send $25 cash, check or money order to:
Rick Stiles
2420 Summit Springs Drive
Atlanta, GA 30338
You will receive the Manual (over 100 pages) which has full doc, examples,
and editing tricks.
",all)
moveCursor(buf54,sFile)
equateNum(n54,30)
while (decNum(n54)) moveCursor(buf54,eWord)
equateLoc(buf54,eInvert,atCursor)
moveCursor(buf54,sWord)
equateLoc(buf54,sInvert,atCursor)
equateNum(n54,6)
while (decNum(n54)) moveCursor(buf54,eLine)
equateLoc(buf54,sHilite,atCursor)
moveCursor(buf54,eFile)
equateLoc(buf54,eHilite,atCursor)
editBuf(buf54)
getKey(n54)
freeBuf(buf54)
>
Erase this when you no longer want to run the demo. Or just erase the left
angle-bracket.
<shftAltCtl-d: if (loadFile("demo")) { compile runKey(shftAlt-1) } >